<?php

namespace backend\models;

use common\models\business\VideoBusiness;
use common\models\db\Video;
use common\models\output\Response;
use yii\base\Model;

class VideoForm extends Model {

    public $id;
    public $name;
    public $position;
    public $home;
    public $active;

    public function rules() {
        return [
            [['name','id'], 'string'],
            [['position'], 'number', 'message' => '{attribute} phải là số'],
            [['name', 'position','id'], 'required', 'message' => '{attribute} không được để trống'],
            [[ 'home', 'position', 'active'], 'integer'],
        ];
    }
        public function attributeLabels() {
        return [
            'id' => "Mã video",
            'name' =>"Tên video",
            'position' =>"Vị trí",
            'active' =>"Trạng thái",
        ];
    }

    /**
     * Cập nhật menu trang chủ
     * @return Response
     */
    public function save() {
        if (!$this->validate()) {
            return new Response(false, "Dữ liệu không hợp  lệ", $this->errors);
        }
        $video = VideoBusiness::get($this->id);
        if (empty($video)) {
            $video = new Video();
            $video->id = $this->id;
        }
        $video->name = $this->name;
        $video->position = $this->position;
        $video->active = $this->active == 1 ? 1 : 0;
        $video->home = $this->home == 1 ? 1 : 0;
        if (!$video->save(false)) {
            return new Response(false, 'Có lỗi xảy ra trong quá trình truyền dữ liệu', $video->errors);
        }
        return new Response(true, 'Cập nhật thành công menu', $video);
    }

}
